<?
#------------------------------------------------------------------------------
# 파 일 명: rss_new_tran.php
# 작업내용: rss파싱후 상품정보 생성 처리
# 인    수:
# 작성일자: 2011.02.23
# 작 성 자: 원데이넷
#------------------------------------------------------------------------------

// 환경파일 불러오기 //////////////////////////////////////////////////////////
include $_SERVER[DOCUMENT_ROOT]."/common/config.php";

echo "<br>status: ${status}</br>";

//-----------------------------------------------------------------------------
// 개별생성처리
//-----------------------------------------------------------------------------
if ("create" == $status)
{
    $find_text = "";

    for ($i = 0; $i < count($chk); $i++)
    {
        if (0 == $i) { $find_text .= " AND ( "; }
        else         { $find_text .= " OR ";    }

        $find_text .= " m4_domain = <>".$chk[$i]."<>  ";
    }

    if ($find_text) { $find_text .= " ) ";  }

    //echo $find_text;
    echo "
    <script>
        location.href=\"rss_new_tran.php?status=tot_create&where=$find_text\";
    </script>";
    exit;
}



//-----------------------------------------------------------------------------
// 전체생성처리
//-----------------------------------------------------------------------------
if ("tot_create" == $status)
{
	$nation   = array("전국", "기타");
	$province = array("경기", "강원", "제주", "경북", "경남", "충북", "충남", "전북", "전남");
	$bigcity  = array("서울", "인천", "대전", "대구", "부산", "광주", "울산");
	$addcity  = array("고양", "부천", "성남", "수원", "안산", "안양", "용인", "창원", "포항", "전주", "천안", "청주", "고양시", "부천시", "성남시", "수원시", "안산시", "안양시", "용인시", "창원시", "포항시", "전주시", "천안시", "청주시");

	// 지정된 상품분류정보 추출 ///////////////////////////////////////////////
	$i = 0;
	$query31  = "SELECT * FROM M_GOODKBN WHERE m5_code != ''";
	$result31 = mysql_query($query31);
	while ($record31 = mysql_fetch_array($result31))
	{
		$gname[$i] = $record31[m5_gname];
		$bkbn[$i]  = $record31[m5_bkbn];
		$code[$i]  = $record31[m5_code];
		$i++;
	}
	$num_bkbn = count($bkbn);
	
    if ($where)
    {
        $where = str_replace("<>", "'", $where);
    }

    // rss신청업체 정보 추출 //////////////////////////////////////////////////
    $Query  = " SELECT * FROM M_META_SITE WHERE m4_kbn = 'Y' ".$where." ORDER BY m4_domain ";
	echo $Query;
    $Result = mysql_query($Query);
    $RecCnt = mysql_num_rows($Result);

    $Cnt = 0;
    $insert_count = 0;
    $update_count = 0;
    $invalid_count = 0;
    
    while ($Record = mysql_fetch_array($Result))
    {
        $pid = ""; $url = ""; $name = "";
        
        $rss_addr = $Record[m4_link];                                   // rss경로
        $domain   = $Record[m4_domain];                                 // 도메인
        
        echo "<br>
        =====================================================================================<br>
        [$Cnt] ".$domain." -- ".$rss_addr." <BR>
        --------------------------------------------------------------------------------------------------------------------------------<br>";

        $xml = @simplexml_load_file($rss_addr);                         // 해당 rss정보를 읽어들인다

        if (eregi("couponmoa.php", $rss_addr)){
            $for_count = $xml->deals->deal;
        }
        else if (eregi("socialxml", $rss_addr)){
            $for_count = $xml->item;
        }
        else if (eregi("wemakeprice_basic.xml", $rss_addr)){
            $for_count = $xml->product;
        }
        else{
            $for_count = $xml->product;
        }
        
        echo "rss product count: ".count($for_count)."<br><br><br>";

        for ($i = 0; $i < count($for_count); $i++)                      // 상품정보추출(다수가 있을수 있음 지역별상품)
        {
            $pid           = "";
            $url           = "";
            $area1         = "";
            $area2         = "";
            $category      = "";
            $name          = "";
            $mimg          = "";
            $caution       = "";
            $desc          = "";
            $detail        = "";
            $price         = "";
            $saleprice     = "";
            $salerate      = "";
            $mincnt        = "";
            $maxcnt        = "";
            $salecnt       = "";
            $startdate     = "";
            $enddate       = "";
            $shop_location = "";
            $shop_name     = "";
            $shop_addr     = "";

            //-----------------------------------------------------------------
            // xml종류에 따른 처리
            //-----------------------------------------------------------------
            if (eregi("couponmoa.php", $rss_addr))                                      // couponmoa xml 처리
            {
                echo "xml type: couponmoa<br>";
                $pid           = $xml->deals->deal[$i]->meta_id;                        // 상품코드
                $url           = $xml->deals->deal[$i]->url;                            // 상품링크
                $category      = $xml->deals->deal[$i]->category;                       // 카테고리명
                $name          = $xml->deals->deal[$i]->title;                          // 상품명
                $mimg          = $xml->deals->deal[$i]->images->image;                  // 상품이미지
                $caution       = $xml->deals->deal[$i]->description;                    // 사용안내(주의사항)
                $desc          = $xml->deals->deal[$i]->description;                    // sms구문
                $price         = $xml->deals->deal[$i]->original;                       // 판매가
                $saleprice     = $xml->deals->deal[$i]->price;                          // 할인가
                $salerate      = $xml->deals->deal[$i]->discount;                       // 할인율
                $mincnt        = $xml->deals->deal[$i]->min_count;                      // 최소구매도달인원 
                $maxcnt        = $xml->deals->deal[$i]->max_count;                      // 최대수량
                $salecnt       = $xml->deals->deal[$i]->now_count;                      // 현재판매량
                $startdate     = $xml->deals->deal[$i]->start_at;                       // 판매시작일
                $enddate       = $xml->deals->deal[$i]->end_at;                         // 판매종료일
                $shop_location = $xml->deals->deal[$i]->shops->shop->shop_address;      // 매장위치
                $shop_name     = $xml->deals->deal[$i]->shops->shop->shop_name;         // 공급업체명
                $shop_addr     = $xml->deals->deal[$i]->shops->shop->shop_address;      // 공급업체주소
                $ckbn = "couponmoa";
            }
            else if (eregi("socialxml", $rss_addr))
            {
                echo "xml type: socialxml<br>";
                $url           = $xml->item[$i]->link;                                  // 상품링크
                $area1         = $xml->item[$i]->area;                                  // 지역
                $category      = $xml->item[$i]->category;                              // 카테고리명
                $name          = $xml->item[$i]->title;                                 // 상품명
                $mimg          = $xml->item[$i]->photo1;                                // 상품이미지
                $desc          = $xml->item[$i]->desc_text;                             // sms구문
                $price         = $xml->item[$i]->price_original;                        // 판매가
                $saleprice     = $xml->item[$i]->price_now;                             // 할인가
                $salerate      = $xml->item[$i]->sale_percent;                          // 할인율
                $mincnt        = $xml->item[$i]->count_min;                             // 최소구매도달인원 
                $maxcnt        = $xml->item[$i]->count_max;                             // 최대수량
                $salecnt       = $xml->item[$i]->sell_count;                            // 현재판매량
                $startdate     = $xml->item[$i]->time_start;                            // 판매시작일
                $enddate       = $xml->item[$i]->time_end;                              // 판매종료일
                $shop_name     = $xml->item[$i]->shop;                                  // 공급업체명
                $shop_addr     = $xml->item[$i]->addr;                                  // 공급업체주소

                // 상품코드 추출 //////////////////////////////////////////////////
                $tmp = explode("?", $url); // print_r($tmp); echo "<br>";

				if      (eregi("wemakeprice",     $tmp[0])) { $tmp2 = explode("/", $tmp[0]); $pid = $tmp2[count($tmp2)-2]; print_r($tmp2); echo "[${pid}]<br>";                          } // wemakeprice용  ex) http://www.wemakeprice.com/deal/adeal/26756/?utm_source=couponmoa&utm_medium=metasite&utm_campaign=metasitelist&src=text&kw=0019EA
                else if (eregi("groupon",         $tmp[0])) { $tmp2 = explode("/", $tmp[0]); $pid = $tmp2[count($tmp2)-1]; print_r($tmp2); echo "[${pid}]<br>";                           } // groupon용  ex) http://www.groupon.kr/app/Product/pview/21798?CID=KR_AFF_1_129&CPS=KR_AFF_1_129&utm_source=AFF_1&utm_medium=129
                else if (eregi("copon",           $tmp[0])) { $tmp2 = explode("/", $tmp[0]); $pid = $tmp2[count($tmp2)-1]; print_r($tmp2); echo "[${pid}]<br>";                           } // copon용  ex) http://www.copon.co.kr/430?meta_ref=meta_do
                else if (eregi("p_no=",           $tmp[1])) { $tmp2 = explode("p_no=", $tmp[1]); $pid = $tmp2[1];						} // 티몬 등 ex) http://www.ticketmonster.co.kr/entry/?jp=80003&ln=7693&p_no=2894909
                else if (eregi("coupang=",        $tmp[1])) { $tmp2 = explode("coupang=", $tmp[1]); $pid = $tmp2[1];                    }
                else if (eregi("dailystrip",      $tmp[0])) { $tmp2 = explode("&", $tmp[1]); $pid = str_replace("com_id=", "", $tmp2[0]);  } // com_id 뒤 알파벳 세자리가 pid ex) http://www.dailystrip.co.kr/main/today.asp?com_id=QCN&img_num=6&dates=20120518
                else if (eregi("wipon_key",       $tmp[1])) { $tmp2 = explode("wipon_key=", $tmp[1]); $pid = $tmp2[1];                  }
                else if (eregi("couponism.net",   $tmp[0])) { $tmp2 = explode("/", $tmp[0]); $pid = $tmp2[3];                           }
                else if (eregi("twt.pn",          $tmp[0])) { $tmp2 = explode("/", $tmp[0]); $pid = $tmp2[3];                           }
                else if (eregi("blackfridays.cc", $tmp[0])) { $tmp2 = explode("/", $tmp[0]); $pid = $tmp2[3];                           }
                else if (eregi("obbacha.com",     $tmp[0])) { $tmp2 = explode("/", $tmp[0]); $pid = $tmp2[3];                           }
                else if (eregi("ishoppang.com",   $tmp[0])) { $pid = str_replace("si=g_", "", $tmp[1]);                                  }
                else if (eregi("dalincoupon.com", $tmp[0])) { $tmp2 = explode("Pid=", $tmp[1]); $pid = $tmp2[1];                        }
                else if (eregi("smallmonkey.co.kr",$tmp[0])){ $tmp2 = explode("/", $tmp[0]); $pid = $tmp2[5];                           }
                else if (eregi("product_number=", $tmp[1])) { $tmp2 = explode("product_number=", $tmp[1]); $pid = $tmp2[1];             }
                else if (eregi("product_no=",     $tmp[1])) { $pid = str_replace("product_no=", "", $tmp[1]);                           }
                else if (eregi("viewCode=",       $tmp[1])) { $tmp2 = explode("viewCode=", $tmp[1]); $pid = substr($tmp2[1], 0, 8);     }
                else if (eregi("main=today",      $tmp[1])) { $pid = substr($tmp[0], -7, -1);                                           }
                else if (eregi("goods_id=",       $tmp[1])) { $pid = str_replace("goods_id=", "", $tmp[1]);                             }
                else if (eregi("p_code=",         $tmp[1])) { $pid = str_replace("p_code=", "", $tmp[1]);                               }
                else if (eregi("code=",           $tmp[1])) { $pid = str_replace("code=", "", $tmp[1]);                                 }
                else if (eregi("pd_idx=",         $tmp[1])) { $tmp2 = explode("pd_idx=", $tmp[1]); $pid = $tmp2[1];                     }
                else if (eregi("tgIdx=",          $tmp[1])) { $tmp2 = explode("tgIdx=", $tmp[1]); $pid = $tmp2[1];                      }
                else if (eregi("gidx=",           $tmp[1])) { $tmp2 = explode("gidx=", $tmp[1]); $pid = $tmp2[1];                       }
                else if (eregi("pidx=",           $tmp[1])) { $tmp2 = explode("&", $tmp[1]); $pid = str_replace("pidx=", "", $tmp2[0]); }
                else if (eregi("id_str=",         $tmp[1])) { $tmp2 = explode("&", $tmp[1]); $pid = str_replace("id_str=", "", $tmp2[0]); }
                else if (eregi("pID=",            $tmp[1])) { $tmp2 = explode("&", $tmp[1]); $pid = str_replace("pID=", "", $tmp2[0]);  }
                else if (eregi("no=",             $tmp[1])) { $pid = str_replace("no=", "", $tmp[1]);                                   }
                else if (eregi("id=",             $tmp[1])) { $pid = str_replace("id=", "", $tmp[1]);                                   }
                else if (eregi("seq=",            $tmp[1])) { $pid = str_replace("seq=", "", $tmp[1]);                                  }
                else if (eregi("prd=",            $tmp[1])) { $tmp2 = explode("prd=", $tmp[1]); $pid = $tmp2[1];                        }
                $ckbn = "socialxml";
            }
            else                                            // 원데이넷 xml 처리
            {
                echo "xml type: onedaynet<br>";
                if ($xml->product[$i]->limitdate)
                {
                    $pid           = $xml->product[$i]->pid;                                // 상품코드
                    $url           = $xml->product[$i]->url;                                // 상품링크
                    $area1         = $xml->product[$i]->region;                             // 지역1
                    $area2         = "";                                                    // 지역2
                    $category      = "";                                                    // 카테고리명
                    $name          = $xml->product[$i]->name;                               // 상품명
                    $mimg          = $xml->product[$i]->image1;                             // 상품이미지
                    $caution       = $xml->product[$i]->descript;                           // 사용안내(주의사항)
                    $desc          = $xml->product[$i]->descript;                           // sms구문
                    $detail        = "";                                                    // 상품상세설명
                    $price         = $xml->product[$i]->price;                              // 판매가
                    $saleprice     = $xml->product[$i]->saleprice;                          // 할인가
                    $salerate      = $xml->product[$i]->salerate;                           // 할인율
                    $mincnt        = $xml->product[$i]->mincnt;                             // 최소구매도달인원 
                    $maxcnt        = $xml->product[$i]->maxcnt;                             // 최대수량
                    $salecnt       = $xml->product[$i]->salecnt;                            // 현재판매량
                    $startdate     = $xml->product[$i]->startdate;                          // 판매시작일
                    $enddate       = $xml->product[$i]->limitdate;                          // 판매종료일
                    $shop_location = $xml->product[$i]->address;                            // 매장위치
                    $shop_name     = "";                                                    // 공급업체명
                    $shop_addr     = $xml->product[$i]->address;                            // 공급업체주소
                    $ckbn = "daoneday";
                }
                else
                {
                    $pid           = $xml->product[$i]->pid;                                // 상품코드
                    $url           = $xml->product[$i]->url;                                // 상품링크
                    $area1         = $xml->product[$i]->area1;                              // 지역1
                    $area2         = $xml->product[$i]->area2;                              // 지역2
                    $category      = $xml->product[$i]->category;                           // 카테고리명
                    $name          = $xml->product[$i]->name;                               // 상품명
                    $mimg          = $xml->product[$i]->mimg;                               // 상품이미지
                    $caution       = $xml->product[$i]->caution;                            // 사용안내(주의사항)
                    $desc          = $xml->product[$i]->desc;                               // sms구문
                    $detail        = $xml->product[$i]->detail;                             // 상품상세설명
                    $price         = $xml->product[$i]->price;                              // 판매가
                    $saleprice     = $xml->product[$i]->saleprice;                          // 할인가
                    $salerate      = $xml->product[$i]->salerate;                           // 할인율
                    $mincnt        = $xml->product[$i]->mincnt;                             // 최소구매도달인원 
                    $maxcnt        = $xml->product[$i]->maxcnt;                             // 최대수량
                    $salecnt       = $xml->product[$i]->salecnt;                            // 현재판매량
                    $startdate     = $xml->product[$i]->startdate;                          // 판매시작일
                    $enddate       = $xml->product[$i]->enddate;                            // 판매종료일
                    $shop_location = $xml->product[$i]->shop_location;                      // 매장위치
                    $shop_name     = $xml->product[$i]->shop_name;                          // 공급업체명
                    $shop_addr     = $xml->product[$i]->shop_addr;                          // 공급업체주소
                    $ckbn = "onedaynet";
                }
            }

            //$name = str_replace(array("!","@","#","$","$"), "", $name);   // 특수문자 제거시에 이용

            $pid           = trim($pid);
            $url           = trim($url);
            $area1         = trim($area1);
            $area2         = trim($area2);
            $category      = trim($category);
            $name          = trim($name);
            $mimg          = trim($mimg);
            $caution       = trim($caution);
            $desc          = trim($desc);
            $detail        = trim($detail);
            $price         = trim($price);
            $saleprice     = trim($saleprice);
            $salerate      = trim($salerate);
            $mincnt        = trim($mincnt);
            $maxcnt        = trim($maxcnt);
            $salecnt       = trim($salecnt);
            $startdate     = trim($startdate);
            $enddate       = trim($enddate);
            $shop_location = trim($shop_location);
            $shop_name     = trim($shop_name);
            $shop_addr     = trim($shop_addr);

            $name          = str_replace("'", "`", $name);
            $desc          = str_replace("'", "`", $desc);
            $caution       = addslashes($caution);
            $detail        = addslashes($detail);
            $shop_location = addslashes($shop_location);

            echo "area1: ${area1}  ||  area2: ${area2}  || addr: ${shop_addr}  || category: ${category}<br>";
            
            if ($price < $saleprice) { echo "Passing because price is smaller than saleprice.<br>"; continue; }
            else if ($price >= $saleprice)
            {
                if ($saleprice && !$salerate)
                {
                    $salerate = round(100 - $saleprice/$price*100);
                    echo "salerate 0 is now reset to ${salerate}.<br>";
                }
            }

            if ($domain && $pid)
            {
				$cat_after = "";
		        $cat_code  = "";

            	// 지정된 상품 분류 코드로 설정
				if ($category)
				{
					$key = explode("/", $category);
					$num_key = count($key);
					$cat_code = "";
					
					for ($j = 0; $j < $num_key; $j++)
					{
						for ($k = 0; $k < $num_bkbn; $k++)
						{
							if ($key[$j] && mb_strpos("1".$bkbn[$k], $key[$j], 0, "utf-8"))
							{
								$cat_after = $gname[$k]; $cat_code = $code[$k];
								echo "[${key[$j]}] in bkbn(${k}) ${bkbn[$k]} --> name: ${cat_after} & code: ${cat_code}<br>";
								$k = $num_bkbn; $j = $num_key;
							}
						}
					}
			    }

                // 메타사이트에서 지정된 지역 분류로 재 설정 ///////////////////////
                $sQuery  = " SELECT * FROM M_CRSS WHERE m3_domain = '$domain' AND m3_pid = '$pid'     ";
                $sResult = mysql_query($sQuery);
                $sRecCnt = mysql_num_rows($sResult);

                if (0 == $sRecCnt)  // M_CRSS 테이블에 없으면 새로 INSERT 한다
                {

// 지역코드 추출하는 새로운 로직, 필요한 것은 $area1과 $shop_adr      	
$code01 = ""; $code02 = ""; 
$code1  = ""; $code2  = "";

if ($area1 && $shop_addr) echo "[ O ] ";
else if (!$area1 && !$shop_addr) echo "[ # ] ";
else if (!$area1 && $shop_addr) echo "[ X ] ";

echo "area1: ${area1}  ||  name: ${name}  ||  start: ${startdate}  ||  end: ${enddate}  || addr: ${shop_addr}<br>";

$shop_addr = str_replace("특별시", "", $shop_addr);
$shop_addr = str_replace("광역시", "", $shop_addr);
$shop_addr = str_replace("특별자치도", "", $shop_addr);
$shop_addr = str_replace("서울시",   "서울 ", $shop_addr); $shop_addr = str_replace("서울", "서울 ", $shop_addr);
$shop_addr = str_replace("인천시",   "인천 ", $shop_addr); $shop_addr = str_replace("인천", "인천 ", $shop_addr);
$shop_addr = str_replace("대전시",   "대전 ", $shop_addr); $shop_addr = str_replace("대전", "대전 ", $shop_addr);
$shop_addr = str_replace("대구시",   "대구 ", $shop_addr); $shop_addr = str_replace("대구", "대구 ", $shop_addr);
$shop_addr = str_replace("부산시",   "부산 ", $shop_addr); $shop_addr = str_replace("부산", "부산 ", $shop_addr);
$shop_addr = str_replace("광주시",   "광주 ", $shop_addr); $shop_addr = str_replace("광주", "광주 ", $shop_addr);
$shop_addr = str_replace("울산시",   "울산 ", $shop_addr); $shop_addr = str_replace("울산", "울산 ", $shop_addr);
$shop_addr = str_replace("경기도",   "경기 ", $shop_addr); $shop_addr = str_replace("경기", "경기 ", $shop_addr);
$shop_addr = str_replace("강원도",   "강원 ", $shop_addr); $shop_addr = str_replace("강원", "강원 ", $shop_addr);
$shop_addr = str_replace("제주도",   "제주 ", $shop_addr); $shop_addr = str_replace("제주", "제주 ", $shop_addr); $shop_addr = str_replace("제주 시", "제주시 ", $shop_addr);
$shop_addr = str_replace("경상북도", "경북 ", $shop_addr); $shop_addr = str_replace("경북", "경북 ", $shop_addr);
$shop_addr = str_replace("경상남도", "경남 ", $shop_addr); $shop_addr = str_replace("경남", "경남 ", $shop_addr);
$shop_addr = str_replace("충청북도", "충북 ", $shop_addr); $shop_addr = str_replace("충북", "충북 ", $shop_addr);
$shop_addr = str_replace("충청남도", "충남 ", $shop_addr); $shop_addr = str_replace("충남", "충남 ", $shop_addr);
$shop_addr = str_replace("전라북도", "전북 ", $shop_addr); $shop_addr = str_replace("전북", "전북 ", $shop_addr);
$shop_addr = str_replace("전라남도", "전남 ", $shop_addr); $shop_addr = str_replace("전남", "전남 ", $shop_addr);
$shop_addr = str_replace("  ", " ", $shop_addr); $shop_addr = str_replace("  ", " ", $shop_addr);

$addr      = explode(" ", $shop_addr); print_r($addr); echo "<br>";
        
if (in_array($area1, $nation) || mb_strpos("찾기".$shop_addr, "전국", 0, "utf-8") || mb_strpos("찾기".$shop_addr, "배송", 0, "utf-8")) // 전국, 기타, 배송 등
{
	$code01 = "A99"; $code02 = "B00";
	$code1  = "A0";  $code2  = "";
	echo "code1: ${code01} || code2: ${code02}<br>";
}
else
{
    if (!$area1 && !$shop_addr)
	{
		$code01 = "A99"; $code02 = "B00";
		$code1  = "A0";  $code2  = "";
		echo "code1: ${code01} || code2: ${code02}<br>";
	}
	else if ($area1 && $shop_addr)
    {
    	if ((in_array($addr[0], $province) || in_array($addr[0], $bigcity)) && ($area1 != $addr[0]))  // 1depth가 안맞을 때는 주소를 기준으로 강제 변경
    	{
			echo "Reset area1: ${area1} --> ${addr[0]}<br>";
    		$area1 = $addr[0];
		}
		 
    	if ($area1 == "제주") $shop_addr = trim(str_replace("제주 ", "", $shop_addr));
		else $shop_addr = trim(str_replace($area1." ", "", $shop_addr));

		$addr      = explode(" ", $shop_addr); print_r($addr); echo "<br>";
		
        $query01  = "SELECT * FROM M_CODE2 WHERE NAME01='${area1}' GROUP BY NAME01";
        $result01 = mysql_query($query01);
        echo "${query01}<br>";
        $num_result01 = mysql_num_rows($result01);
        
        if ($num_result01)
        {
            $record01 = mysql_fetch_array($result01);
            $code01 = $record01[CODE01]; $code1 = $record01[CODE1]; echo "code01: ${code01}<br>";
            
            $query02  = "SELECT * FROM M_CODE2 WHERE CODE01='${code01}' AND (NAME2 LIKE '%${addr[0]}%' OR NAME02 LIKE '%${addr[0]}%')";
            $result02 = mysql_query($query02);
            echo "${query02}<br>";
            $num_result02 = mysql_num_rows($result02);
            
            if ($num_result02 == 1)
            {
                $record02 = mysql_fetch_array($result02);
                $code02 = $record02[CODE02]; $code2 = $record02[CODE2]; echo "code02: ${code02}<br>";
            }
            else if ($num_result02 > 1)  // a) 3depth가 필요하거나, b) 대구 서구/달서구 같은 경우
            {
                while ($record02 = mysql_fetch_array($result02))  // b)를 먼저 처리하고
                {
                    if ($addr[0] == $record02[NAME2] || $addr[0] == $record02[NAME02])
                    {
                        $code02 = $record02[CODE02]; $code2 = $record02[CODE2]; echo "code02: ${code02}<br>";
                    }
                }
            
                if (!$code02)  // a)를 처리, 3depth를 찾는다
                {
                    $query03  = "SELECT * FROM M_CODE2 WHERE CODE01='${code01}' AND (NAME2 LIKE '%${addr[1]}%' OR NAME02 LIKE '%${addr[1]}%')";
                    $result03 = mysql_query($query03);
                    echo "${query03}<br>";
                    $num_result03 = mysql_num_rows($result03);
                    
                    if ($num_result03 == 1)
                    {
                        $record03 = mysql_fetch_array($result03);
                        $code02 = $record03[CODE02]; $code2 = $record03[CODE2]; echo "code02: ${code02}<br>";
                    }
                    else echo "could not found code02<br>";
                }
            }
            else if ($num_result02 == 0)  // 대부분 띄워쓰기가 안되어 있는 경우
            {
                $addr_len = mb_strlen($addr[0], "utf-8"); echo "addr[0]: ${addr[0]} (${addr_len})<br>";
                
                if ($addr_len > 4)
                {
                    if (in_array($area1, $bigcity))
                    {
                        $temp = mb_substr($addr[0], 0, 3, "utf-8");
                        if ($temp == "구로구") $addr[0] = $temp;
                        else { $addr = explode("구", $addr[0]); $addr[0] .= "구"; }
                    }
                    else
					{
						echo "3rd char: ".mb_substr($addr[0], 2, 1, "utf-8")."<br>";
						if (mb_substr($addr[0], 2, 1, "utf-8") == "군") { $addr = explode("군", $addr[0]); $addr[0] .= "군"; }
						else { $addr = explode("시", $addr[0]); $addr[0] .= "시"; }
					}
                    
                    if (in_array($addr[0], $addcity)) { $addr = explode("구", $addr[1]); $addr[0] .= "구"; }
                    
                    print_r($addr); echo "<br>";

                    $query04  = "SELECT * FROM M_CODE2 WHERE CODE01='${code01}' AND (NAME2 LIKE '%${addr[0]}%' OR NAME02 LIKE '%${addr[0]}%')";
                    $result04 = mysql_query($query04);
                    echo "${query04}<br>";
                    $num_result04 = mysql_num_rows($result04);
                    
                    if ($num_result04 == 1)
                    {
                        $record04 = mysql_fetch_array($result04);
                        $code02 = $record04[CODE02]; $code2 = $record04[CODE2]; echo "code02: ${code02}<br>";
                    }
                    else if ($num_result04 > 1) // 3a) depth가 필요하거나, b) 대구서구/대구달서구 같은 경우
                    {
                        
                        while ($record04 = mysql_fetch_array($result04)) // b)를 먼저 처리하고
                        {
                            if ($addr[0] == $record04[NAME2] || $addr[0] == $record04[NAME02])
                            {
                                $code02 = $record04[CODE02]; $code2 = $record04[CODE2]; echo "code02: ${code02}<br>";
                            }
                        }
                    
                        if (!$code02) // a)를 처리, 3depth를 찾는다
                        {
                            $query05  = "SELECT * FROM M_CODE2 WHERE CODE01='${code01}' AND (NAME2 LIKE '%${addr[1]}%' OR NAME02 LIKE '%${addr[1]}%')";
                            $result05 = mysql_query($query05);
                            echo "${query05}<br>";
                            $num_result05 = mysql_num_rows($result05);
                            
                            if ($num_result05 == 1)
                            {
                                $record05 = mysql_fetch_array($result05);
                                $code02 = $record05[CODE02]; $code2 = $record05[CODE2]; echo "code02: ${code02}<br>";
                            }
                            else echo "could not found code02<br>";
                        }
                    }

                }
                else
				{
		            $query06  = "SELECT * FROM M_CODE2 WHERE NAME1 LIKE '%${addr[0]}%' OR NAME01 LIKE '%${addr[0]}%' GROUP BY NAME01";
		            $result06 = mysql_query($query06);
		            echo "${query06}<br>";
		            $num_result06 = mysql_num_rows($result06);
		
		            $query07  = "SELECT * FROM M_CODE2 WHERE NAME2 LIKE '%${addr[0]}%' OR NAME02 LIKE '%${addr[0]}%' GROUP BY NAME02";
		            $result07 = mysql_query($query07);
		            echo "${query07}<br>";
		            $num_result07 = mysql_num_rows($result07);

		            if ($num_result06)
		            {
		                $record06 = mysql_fetch_array($result06);
		                $code01 = $record06[CODE01]; $code1 = $record06[CODE1]; echo "code01: ${code01}<br>";
	
		                $query08  = "SELECT * FROM M_CODE2 WHERE CODE01='${code01}' AND (NAME2 LIKE '%${addr[1]}%' OR NAME02 LIKE '%${addr[1]}%')";
		                $result08 = mysql_query($query08);
		                echo "${query08}<br>";
		                $num_result08 = mysql_num_rows($result08);
		                
		                if ($num_result08 == 1)
		                {
		                    $record08 = mysql_fetch_array($result08);
		                    $code02 = $record08[CODE02]; $code2 = $record08[CODE2]; echo "code02: ${code02} [ ${record08[NAME2]} ]<br>";
		                }
		                else echo "could not found code02<br>";
		            }
		
		            if ($num_result07)
		            {
		                $record07 = mysql_fetch_array($result07);
		                $code01 = $record07[CODE01]; $code1 = $record07[CODE1]; echo "Reset code01: ${code01} [ ${record07[NAME01]} ]<br>";
						
						if ($num_result07 == 1)
						{
			                $code02 = $record07[CODE02]; $code2 = $record07[CODE2]; echo "code02: ${code02} [ ${addr[0]} ]<br>";
						}
						else
						{
			                $query08  = "SELECT * FROM M_CODE2 WHERE CODE01='${code01}' AND (NAME2 LIKE '%${addr[1]}%' OR NAME02 LIKE '%${addr[1]}%')";
			                $result08 = mysql_query($query08);
			                echo "${query08}<br>";
			                $num_result08 = mysql_num_rows($result08);
			                
			                if ($num_result08 == 1)
			                {
			                    $record08 = mysql_fetch_array($result08);
			                    $code02 = $record08[CODE02]; $code2 = $record08[CODE2]; echo "code02: ${code02} [ ${record08[NAME2]} ]<br>";
			                }
			                else if ($num_result08 > 1)  // a) 3depth가 필요하거나, b) 대구 서구/달서구 같은 경우
			                {
			                    while ($record08 = mysql_fetch_array($result08))  // b)를 먼저 처리하고
			                    {
			                        if ($addr[0] == $record08[NAME2] || $addr[0] == $record08[NAME02])
			                        {
			                            $code02 = $record08[CODE02]; $code2 = $record08[CODE2]; echo "code02: ${code02}<br>";
			                        }
			                    }
			                
			                    if (!$code02)  // a)를 처리, 3depth를 찾는다
			                    {
			                        $query03  = "SELECT * FROM M_CODE2 WHERE CODE01='${code01}' AND (NAME2 LIKE '%${addr[2]}%' OR NAME02 LIKE '%${addr[2]}%')";
			                        $result03 = mysql_query($query03);
			                        echo "${query03}<br>";
			                        $num_result03 = mysql_num_rows($result03);
			                        
			                        if ($num_result03 == 1)
			                        {
			                            $record03 = mysql_fetch_array($result03);
			                            $code02 = $record03[CODE02]; $code2 = $record03[CODE2]; echo "code02: ${code02}<br>";
			                        }
			                        else echo "could not found code02<br>";
			                    }
			                }

			                else echo "could not found code02<br>";
		                }			
		            }
				}
            }
        }
		else echo "area1 is not correct<br>";
    }
    else if (!$area1 && $shop_addr) 
    {
        $query06  = "SELECT * FROM M_CODE2 WHERE NAME1 LIKE '%${addr[0]}%' OR NAME01 LIKE '%${addr[0]}%' GROUP BY NAME01";
        $result06 = mysql_query($query06);
        echo "${query06}<br>";
        $num_result06 = mysql_num_rows($result06);

        $query07  = "SELECT * FROM M_CODE2 WHERE NAME2 LIKE '%${addr[0]}%' OR NAME02 LIKE '%${addr[0]}%' GROUP BY NAME02";
        $result07 = mysql_query($query07);
        echo "${query07}<br>";
        $num_result07 = mysql_num_rows($result07);

        if ($num_result06)
        {
            $record06 = mysql_fetch_array($result06);
            $code01 = $record06[CODE01]; $code1 = $record06[CODE1]; echo "code01: ${code01}<br>";

            $query08  = "SELECT * FROM M_CODE2 WHERE CODE01='${code01}' AND (NAME2 LIKE '%${addr[1]}%' OR NAME02 LIKE '%${addr[1]}%')";
            $result08 = mysql_query($query08);
            echo "${query08}<br>";
            $num_result08 = mysql_num_rows($result08);
            
            if ($num_result08 == 1)
            {
                $record08 = mysql_fetch_array($result08);
                $code02 = $record08[CODE02]; $code2 = $record08[CODE2]; echo "code02: ${code02} [ ${record08[NAME2]} ]<br>";
            }
			else if ($num_result08 > 1)
			{
                $query09  = "SELECT * FROM M_CODE2 WHERE CODE01='${code01}' AND (NAME2 LIKE '%${addr[2]}%' OR NAME02 LIKE '%${addr[2]}%')";
                $result09 = mysql_query($query09);
                echo "${query09}<br>";
                $num_result09 = mysql_num_rows($result09);
                
                if ($num_result09 == 1)
                {
                    $record09 = mysql_fetch_array($result09);
                    $code02 = $record09[CODE02]; $code2 = $record09[CODE2]; echo "code02: ${code02} [ ${record09[NAME2]} ]<br>";
                }
            else echo "could not found code02<br>";
            }
        }

        if ($num_result07)
        {
            $record07 = mysql_fetch_array($result07);
            $code01 = $record07[CODE01]; $code1 = $record07[CODE1]; echo "code01: ${code01} [ ${record07[NAME01]} ]<br>";
			
			if ($num_result07 == 1)
			{
                $code02 = $record07[CODE02]; $code2 = $record07[CODE2]; echo "code02: ${code02} [ ${addr[0]} ]<br>";
			}
			else if ($num_result07 > 1)
			{
                $query08  = "SELECT * FROM M_CODE2 WHERE CODE01='${code01}' AND (NAME2 LIKE '%${addr[1]}%' OR NAME02 LIKE '%${addr[1]}%')";
                $result08 = mysql_query($query08);
                echo "${query08}<br>";
                $num_result08 = mysql_num_rows($result08);
                
                if ($num_result08 == 1)
                {
                    $record08 = mysql_fetch_array($result08);
                    $code02 = $record08[CODE02]; $code2 = $record08[CODE2]; echo "code02: ${code02} [ ${record08[NAME2]} ]<br>";
                }
                else echo "could not found code02<br>";
            }			
        }

    }
}

if (!$code01)                 { echo "code01 not found: skipped<br>"; continue; } 
else if ($code01 && !$code02) { echo "code01 found, code02 not found: code02 set to [공통]<br>"; $code02="B99"; } // 안찾아지면 일단 공통 처리
else if ($code01 && $code02)  { echo "code01 and code02 found<br>"; }
                    
                    // 상품테이블에 저장처리 //////////////////////////////////
                    $iQuery  = " INSERT INTO M_CRSS (m3_domain, m3_pid, m3_url, m3_area1, m3_area2, m3_area01, m3_area02, m3_category, m3_cat_code, m3_category_after, m3_name, m3_mimg, m3_caution,  m3_desc, m3_detail, m3_price, m3_saleprice, m3_salerate, m3_mincnt, m3_maxcnt, m3_salecnt, m3_startdate, m3_enddate, m3_shop_location, m3_shop_name, m3_shop_addr, m3_idate, m3_oldarea1, m3_oldarea2, m3_oldcategory, m3_ecnt, m3_elog, m3_click   )   ".
                               "             VALUES ('$domain', '$pid', '$url', '$code1', '$code2', '$code01', '$code02', '$category', '$cat_code', '$cat_after', '$name', '$mimg', '$caution', '$desc', '$detail', '$price', '$saleprice', '$salerate', '$mincnt', '$maxcnt', '$salecnt', '$startdate', '$enddate', '$shop_location', '$shop_name', '$shop_addr', sysdate(), '$area1',    '$area2',     '$category',    '0',     '',      '0'        )   ";
                    $iResult = mysql_query($iQuery);
                     
                    if ($iResult) { $insert_count++; echo "${iQuery}<br>insert_count: ${insert_count}<br>"; }
                    else          { $invalid_count++; echo "Invalid query: ${iQuery}<br>"; }

                }

 
                else  // M_CRSS 테이블에 있으면
                {
                    // 관리자 변경 체크와 상관없이 rss 정보를 수정한다, m3_enddate와 m3_salecnt에 한해서, 나머지는 건드리지 않는다 - by HMC
                    $sRecord = mysql_fetch_array($sResult);
                    $iQuery  = " UPDATE M_CRSS SET m3_enddate = '$enddate', m3_salecnt='${salecnt}' WHERE m3_domain='${domain}' AND m3_pid='${pid}' ";
                    $iResult = mysql_query($iQuery);
                    
                    if ($iResult) { $update_count++; echo "${iQuery}<br>update_count: ${update_count}<br>"; }
                    else          { $invalid_count++; echo "Invalid query: ${iQuery}<br>"; }
                    
                    /* 원데이넷 로직 -----------------------------------------
                    // 관리자 변경 체크된 경우에는 rss로 읽어들인 정보를 수정하지 않는다
                    $sRecord = mysql_fetch_array($sResult);
                    if ("Y" != $sRecord[m3_admkbn])
                    {
                        // 차후 생성부분을 cron으로 돌릴때 시간이 많이 소요될경우에는 아래 업데이트부분을 따로 처리한다
                        // 본파일을 복사해서 별도로 php파일을 만들고 update부분만 처리하도록 한후에 cron에 설정한다
                        $iQuery  = " UPDATE M_CRSS SET m3_url = '$url', m3_price = '$price', m3_saleprice = '$saleprice', m3_salerate = '$salerate', m3_startdate = '$startdate', m3_enddate = '$enddate', m3_mincnt = '$mincnt', m3_maxcnt = '$maxcnt', m3_salecnt = '$salecnt', m3_category = '$category', m3_cat_code = '$cat_code', 'm3_category_after = '$cat_after'    ".
                                   " WHERE m3_domain = '$domain' AND m3_pid = '$pid'     ";
                        $iResult = mysql_query($iQuery);
                        echo "${iQuery}<br>";
                    }
                    원데이넷 로직 끝 -------------------------------------- */ 
                }

                /*
                // 이부분을 포함하게 되면 읽어들이는 시간이 6분정도가 소요되어 막았음
                if ($shop_addr)
                {
                    // 네이버지도 주소에 따른 좌표 추출하여 필드업데이트진행
                    $map_xml = @simplexml_load_file("http://map.naver.com/api/geocode.php?key=".$COM_NKEY."&query=".$shop_addr);    // 해당 rss 주소정보를 읽어들인다

                    $x = $map_xml->item->point->x;
                    $y = $map_xml->item->point->y;

                    if($x && $y)
                    {
                        $zoom = 2;

                        // update 좌표 ////////////////////////////////////
                        $iQuery  = " UPDATE M_CRSS SET m3_mapX = '$x', m3_mapY = '$y', m3_mapZ = '$zoom' WHERE m3_domain = '$domain' AND m3_pid = '$pid'    ";
                        $iResult = mysql_query($iQuery);
                    }
                }
                */

            } // end of if ($domain && $pid)



            echo $sRecCnt." >> ".$ckbn." >> ".$pid." --- ".$name."<br><br><br>";
        } // end of for

		//echo $iQuery;
        echo "<br><br><br>";

        $Cnt++;

        // 진행사항을 넘긴다 //////////////////////////////////////////////////
        $line = $Cnt / $RecCnt;
        $line = (int)(750 * $line);

        // echo $line." >> ".$domain." >> ".$pid." >> ".$url." >> ".$name."<BR>";

        echo "
        <script>
            var tbl = parent.document.getElementById('avg'); 
            tbl.style.width = '$line'; 
        </script>";

    } // end of while

    echo "end of parsing...<br>total insert_count: ${insert_count} || total update_count: ${update_count}<br><br><br>";
    
    $update_cat_succ  = 0;
    $update_cat_fail  = 0;
    $update_area_succ = 0;
    $update_area_fail = 0;
    
    // 분류와 지역 코드에 따라 미리 상품 수 세어 놓기
    $query91      = "SELECT m3_cat_code as code, count(*) as cnt FROM M_CRSS LEFT JOIN M_META_SITE ON m4_domain = m3_domain LEFT JOIN M_GOODKBN ON m3_cat_code = m5_code WHERE m3_vkbn = 'Y' AND m4_kbn ='Y' AND m5_show = 1 AND m3_mimg<>'' AND m3_enddate > sysdate() GROUP BY m3_cat_code ORDER BY m3_cat_code"; 
    $result91     = mysql_query($query91);
	$num_result91 = mysql_num_rows($result91);
	for ($i = 0; $i < $num_result91; $i++)
	{
		$record91     = mysql_fetch_array($result91);
		$cat_code[$i] = $record91[code];
		$cat_cnt[$i]  = $record91[cnt];
		
		$query92      = "UPDATE M_GOODKBN SET m5_count='${cat_cnt[$i]}' WHERE m5_code='${cat_code[$i]}'";
		$result92     = mysql_query($query92);
		if ($result92) $update_cat_succ++; else { $update_cat_fail++; echo "Invalid query: ${query92}<br>"; }
	}	
	
	$empty_area_count = mysql_query("UPDATE M_CODE2 SET count=0"); // 0로 없어지는 지역의 sum count를 해결하기 위해
    
    $query93      = "SELECT m3_area01, m3_area02, count(*) as cnt FROM M_CRSS LEFT JOIN M_META_SITE ON m3_domain = m4_domain LEFT JOIN M_CODE2 ON m3_area01 = code01 AND m3_area02 = code02 WHERE m3_area01<>'' AND m3_mimg<>'' AND m3_vkbn ='Y' AND m4_kbn = 'Y' AND m3_enddate > sysdate() GROUP BY m3_area01, m3_area02 ORDER BY disp_order, m3_area01, m3_area02";    
	$result93      = mysql_query($query93);
	$num_result93 = mysql_num_rows($result93);
	for ($i = 0; $i < $num_result93; $i++)
	{
		$record93      = mysql_fetch_array($result93);
		$area01[$i]    = $record93[m3_area01];
		$area02[$i]    = $record93[m3_area02];
		$area_cnt[$i]  = $record93[cnt];
		
		$query94       = "UPDATE M_CODE2 SET count='${area_cnt[$i]}' WHERE CODE01='${area01[$i]}' AND CODE02='${area02[$i]}'";
		$result94      = mysql_query($query94);
		if ($result94) $update_area_succ++; else { $update_area_fail++; echo "Invalid query: ${query94}<br>"; }
	}	
        
    echo "end of sum count updating...<br>";
    echo "update_cat_succ: ${update_cat_succ} || update_cat_fail: ${update_cat_fail}<br>";
    echo "update_area_succ: ${update_area_succ} || update_area_fail: ${update_area_fail}<br>";
            
    // echo "<script> location.href='rss_new_tran.php?status=kbn_change'; </script>";
    exit;
}

/* 위의 echo를 막아놔서 아래의 kbn_change는 더 이상 쓰이지 않음 - by HMC 120522 

//-----------------------------------------------------------------------------
// 저장된 rss데이타 분류정리 함수
//-----------------------------------------------------------------------------
if ("kbn_change" == $status)
{
    // 지정된 상품분류정보 추출 ///////////////////////////////////////////////
    $Cnt = 0;
    $sQuery  = " SELECT * FROM M_GOODKBN WHERE m5_code != '' ";
    $sResult = mysql_query($sQuery);
    while ($sRecord = mysql_fetch_array($sResult))
    {
        $arr_A[$Cnt] = $sRecord[m5_gname];
        $arr_B[$Cnt] = $sRecord[m5_bkbn];
        $Cnt++;
    }

    // 지정된 지역분류정보 추출 ///////////////////////////////////////////////
    $Cnt = 0;
    $sQuery  = " SELECT * FROM M_AREAKBN WHERE m6_code != '' ";
    $sResult = mysql_query($sQuery);
    while ($sRecord = mysql_fetch_array($sResult))
    {
        $arr_C[$Cnt] = $sRecord[m6_aname];
        $arr_D[$Cnt] = $sRecord[m6_bkbn];
        $Cnt++;
    }

    $Query  = " SELECT * FROM M_CRSS WHERE m3_category = ''   ";
    $Result = mysql_query($Query);
    $RecCnt = mysql_num_rows($Result);

    $Cnt = 0;
    while ($Record = mysql_fetch_array($Result))
    {
        $domain      = $Record[m3_domain];
        $pid         = $Record[m3_pid];
        $oldcategory = $Record[m3_oldcategory];

        // rss분류를 지정된 분류로 변경처리 ///////////////////////////
        $ncategory = "";
        $temp = str_replace(array("(", ")", "[", "]", "<", ">", "/", "|", "{", "}"), array("\(", "\)", "\[", "\]", "\<", "\>", "\/", "\|", "\{", "\}"), $oldcategory);
        for ($i = 0; $i < count($arr_A); $i++)
        {
            if (eregi("/".$temp."/", $arr_B[$i]))
            {
                $ncategory = $arr_A[$i];
            }
        }

        $sQuery  = " UPDATE M_CRSS SET m3_category = '$ncategory' WHERE m3_domain = '$domain' AND m3_pid = '$pid'    ";
        $sResult = mysql_query($sQuery);
        echo "${sQuery}<br>";

        $Cnt++;
    }



    exit;
}

*/

?>
